/*
 ***************************************************************************************
 * EP for web developers.Supported By Junxworks
 * @Title:  MysteryConfig.java   
 * @Package io.github.junxworks.qt.config   
 * @Description: (用一句话描述该文件做什么)   
 * @author: Administrator
 * @date:   2021年9月12日 下午12:50:15   
 * @version V1.0 
 * @Copyright: 2021 Junxworks. All rights reserved. 
 * 注意：
 *  ---------------------------------------------------------------------------------- 
 * 文件修改记录
 *     文件版本：         修改人：             修改原因：
 ***************************************************************************************
 */
package io.github.junxworks.qt.config;

import org.springframework.boot.context.properties.ConfigurationProperties;

import io.github.junxworks.junx.core.executor.ExecutorConfig;

@ConfigurationProperties(prefix = "junx.qt")
public class QtConfig {

	private ExecutorConfig executor = new ExecutorConfig();

	private ExecutorConfig engineExecutor = new ExecutorConfig();

	private String profileApiURL;

	private String profileApiToken;

	private String realtimeApiURL;

	/** tushare超频次限额后的暂停时间.默认10秒 */
	private long tushareCalmdownTime = 10000L;

	private int realtimeApiPageSize = 200;

	private int httpConnectTimeout = 60 * 1000;

	private int httpRequestTimeout = 20 * 1000;

	private int httpReadTimeout = 90 * 1000;

	private String emailHost; //smtp.163.com

	private int emailHostPort = 465;

	private String emailSender;

	/** 邮箱授权码，不是密码. */
	private String emailSenderPwd;

	public ExecutorConfig getEngineExecutor() {
		return engineExecutor;
	}

	public void setEngineExecutor(ExecutorConfig engineExecutor) {
		this.engineExecutor = engineExecutor;
	}

	public long getTushareCalmdownTime() {
		return tushareCalmdownTime;
	}

	public void setTushareCalmdownTime(long tushareCalmdownTime) {
		this.tushareCalmdownTime = tushareCalmdownTime;
	}

	public String getEmailHost() {
		return emailHost;
	}

	public void setEmailHost(String emailHost) {
		this.emailHost = emailHost;
	}

	public int getEmailHostPort() {
		return emailHostPort;
	}

	public void setEmailHostPort(int emailHostPort) {
		this.emailHostPort = emailHostPort;
	}

	public String getEmailSender() {
		return emailSender;
	}

	public void setEmailSender(String emailSender) {
		this.emailSender = emailSender;
	}

	public String getEmailSenderPwd() {
		return emailSenderPwd;
	}

	public void setEmailSenderPwd(String emailSenderPwd) {
		this.emailSenderPwd = emailSenderPwd;
	}

	public ExecutorConfig getExecutor() {
		return executor;
	}

	public void setExecutor(ExecutorConfig executor) {
		this.executor = executor;
	}

	public String getProfileApiURL() {
		return profileApiURL;
	}

	public void setProfileApiURL(String profileApiURL) {
		this.profileApiURL = profileApiURL;
	}

	public String getProfileApiToken() {
		return profileApiToken;
	}

	public void setProfileApiToken(String profileApiToken) {
		this.profileApiToken = profileApiToken;
	}

	public String getRealtimeApiURL() {
		return realtimeApiURL;
	}

	public void setRealtimeApiURL(String realtimeApiURL) {
		this.realtimeApiURL = realtimeApiURL;
	}

	public int getRealtimeApiPageSize() {
		return realtimeApiPageSize;
	}

	public void setRealtimeApiPageSize(int realtimeApiPageSize) {
		this.realtimeApiPageSize = realtimeApiPageSize;
	}

	public int getHttpConnectTimeout() {
		return httpConnectTimeout;
	}

	public void setHttpConnectTimeout(int httpConnectTimeout) {
		this.httpConnectTimeout = httpConnectTimeout;
	}

	public int getHttpRequestTimeout() {
		return httpRequestTimeout;
	}

	public void setHttpRequestTimeout(int httpRequestTimeout) {
		this.httpRequestTimeout = httpRequestTimeout;
	}

	public int getHttpReadTimeout() {
		return httpReadTimeout;
	}

	public void setHttpReadTimeout(int httpReadTimeout) {
		this.httpReadTimeout = httpReadTimeout;
	}

}
